#ifndef __IMAGEBUFFPOOL_H__
#define __IMAGEBUFFPOOL_H__
#include <stdint.h>
#include <stdbool.h>
#include <xvc_common.h>

#ifdef __cplusplus
extern "C" {
#endif

//BBEncoder 封装
typedef struct BuffPoolWapper BuffPoolWapper_t;

//对外提供C语言调用接口
BuffPoolWapper_t* buff_pool_create(uint32_t objects_num,
                                   uint32_t objects_num_max,
                                   uint32_t objects_item_num,
                                   bool extention_able);

bool buff_pool_destroy(BuffPoolWapper_t* buffpoolWapper);

uint8_t* buff_pool_get_buff(BuffPoolWapper_t* buffpoolWapper);

void buff_pool_release_buff(BuffPoolWapper_t* buffpoolWapper, uint8_t* buff_item);

#ifdef __cplusplus
}
#endif

#endif// __IMAGEBUFFPOOL_H__
